// 日期格式化
export function formateDate(date, fmt) {
	if (/(y+)/.test(fmt)) {
		fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
	}
	let o = {
		'M+': date.getMonth() + 1,
		'd+': date.getDate(),
		'h+': date.getHours(),
		'm+': date.getMinutes(),
		's+': date.getSeconds()
	}
	for (let k in o) {
		if (new RegExp(`(${k})`).test(fmt)) {
			let str = o[k] + ''
			fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str))
		}
	}
	return fmt
}
// 左边补0函数
export function padLeftZero(str) {
	return ('00' + str).substr(str.length)
}


/**
 * 上拉加载/分页查询封装,GET
 * thea,页面this对象 
 * theFunc,请求接口Api 
 * dataName,页面数据存放变量名
 * otherParam,其它请求参数
 * isChangeParam,如果otherParam请求参数发生变化，数据清空。
 * 页面必须有的数据：pageParam: {
					page: 1,
					list_roes: 10,
					page_count: 1,
					status: "nomore"
				}
 */
export const pagenation = (thea, theFunc, dataName, otherParam = {}, isChangeParam = false) => {
	// if (thea.pageParam.page >= thea.pageParam.page_count) return ;
	thea.pageParam.status = 'loading';
	if (isChangeParam){
		thea.pageParam.page = 1;
		thea[dataName] = [];//如果请求参数发生变化，数据清空。
	} 
	return setTimeout(() => {
		theFunc({
			params: {
				"page": thea.pageParam.page,
				"list_roes": thea.pageParam.list_roes,
				...otherParam
			}
		}).then(res => {
			thea.pageParam.page_count = res.page_count;
			thea[dataName] = thea[dataName].concat(res.list); 
			thea.pageParam.status = thea.pageParam.page >= thea.pageParam.page_count ? 'nomore' :
				'loadmore';
			thea.pageParam.page++;
		}).catch(err => {
			thea.pageParam.status = 'loadmore';
			uni.showToast({
				title: err,
				icon: 'error'
			});
		})
	}, 500);
}





  